#include <stdio.h>
#include "fs_config.h"

//0x24	4	Sectors per file allocation table
//ReservedSectorCount + 2*SectoresxFAT+ ((Nº Cluster-2)*SectoresXCluster)
char * leer_un_cluster (unsigned long nro_cluster, FILE *fp)
{
	unsigned int offset;
	char *buff;
	unsigned long sector;
	//pido memoria para un cluster.
	buff = (char *)malloc( SECTOR_PER_CLUSTER*SIZE_SECTOR*sizeof(char));
	//Ralizo el cálculo para saber cuanto tengo que mover el puntero
	sector = nro_cluster * SECTOR_PER_CLUSTER;
	//concateno los sectores para conformar un buffer
	offset = 0;
	int i;
	for (i = 0;i<SECTOR_PER_CLUSTER;i++)
	{
		//printf("\nSector: %d con offset %d", sector, offset);
		memcpy((buff+offset),leer_sector(sector, fp),SIZE_SECTOR);
		offset = offset + SIZE_SECTOR;
		sector=sector+1;
	}
	return buff;
}
